<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
      xmlns:h="http://java.sun.com/jsf/html"
      xmlns:f="http://java.sun.com/jsf/core"
      xmlns:ui="http://java.sun.com/jsf/facelets"
      xmlns:p="http://primefaces.org/ui">

    <ui:composition template="/plantillas/plantillaPrincipal.xhtml">
        <ui:define name="contenido">
            <f:view>
                <h:form id="formFindProdDisponible">

                    <p:panel id="pnlFindProdDisponible" header="Ajuste Inventario"
                             style="width:650px;margin: 5px auto" 
                             toggleable="true" widgetVar="buscar" collapsed="#{BKAjusteInventario.listaArticuloSede ne null}">

                        <h:panelGrid columns="2" styleClass="grid">

                            <h:outputLabel id="lblSede" value="SEDE: " class="lblBusqueda" />
                            <p:selectOneMenu id="cbxSede" value="#{BKAjusteInventario.artculoSedeBusqueda.id.idSede}"
                                             filterMatchMode="contains" filter="#{BKAjusteInventario.listaSede.size() gt 10}" >
                                <f:selectItem itemLabel="Seleccionar" itemValue="0" />
                                <f:selectItems value="#{BKAjusteInventario.listaSede}"
                                               var="sede" itemLabel="#{sede.nombre}"
                                               itemValue="#{sede.id}" />
                                <p:ajax listener="#{MBAjusteInventario.buscarArticulos}" update="cbxArticulo" event="change" />
                            </p:selectOneMenu>

                            <h:outputLabel id="lblArticulo" value="ARTICULO: " class="lblBusqueda" />
                            <p:selectOneMenu id="cbxArticulo" value="#{BKAjusteInventario.artculoSedeBusqueda.id.idArticulo}"
                                             disabled="#{BKAjusteInventario.artculoSedeBusqueda.id.idSede eq 0}"
                                             filterMatchMode="contains" filter="#{BKAjusteInventario.listaArticulo.size() gt 10}" style="width: 500px" >
                                <f:selectItem itemLabel="Seleccionar" itemValue="0" />
                                <f:selectItems value="#{BKAjusteInventario.listaArticulo}"
                                               var="articulo" itemLabel="#{articulo.nombreComercial}"
                                               itemValue="#{articulo.id}" />
                                <p:ajax listener="#{MBAjusteInventario.buscarPartidas}" update="cbxPartida" event="change" />
                            </p:selectOneMenu>

                            <h:outputLabel id="lblPartida" value="PARTIDA/LOTE: " class="lblBusqueda" />
                            <p:selectOneMenu id="cbxPartida" value="#{BKAjusteInventario.artculoSedeBusqueda.id.partidaLote}"
                                             disabled="#{BKAjusteInventario.artculoSedeBusqueda.id.idArticulo eq 0}"
                                             filterMatchMode="contains" filter="#{BKAjusteInventario.listaPartida.size() gt 10}" >
                                <f:selectItem itemLabel="Seleccionar" itemValue="" />
                                <f:selectItems value="#{BKAjusteInventario.listaPartida}"
                                               var="partida" itemLabel="#{partida}"
                                               itemValue="#{partida}" />
                            </p:selectOneMenu>

                        </h:panelGrid>

                        <h:panelGrid columns="1" columnClasses="label, value"
                                     styleClass="grid">
                            <p:commandButton id="btnBuscarProdDisp" value="BUSCAR"
                                             update="pnlListaProdDisp,dataTablaProdDisp"
                                             actionListener="#{MBAjusteInventario.buscarArticuloInventario}"
                                             oncomplete="listaArtInventario.show();buscar.toggle()" style="font-size: 12px" />
                        </h:panelGrid>
                    </p:panel>

                    <p:panel id="pnlListaProdDisp"
                             header="Lista de Articulos Inventario" closable="true"
                             style="width: 100%;margin: 10px auto" visible="#{BKAjusteInventario.listaArticuloSede ne null}"
                             widgetVar="listaArtInventario">

                        <h:panelGrid style="margin: 15px auto" cellspacing="4" columns="2" rendered="false">
                            <h:commandButton value="Exportar EXCEL">  
                                <p:dataExporter type="xls" target="dataTablaProdDisp" fileName="kardex" />  
                            </h:commandButton>  

                            <h:commandButton value="Exportar PDF">  
                                <p:dataExporter type="pdf" target="dataTablaProdDisp" fileName="kardex"/>  
                            </h:commandButton>
                        </h:panelGrid>

                        <p:dataTable id="dataTablaProdDisp" var="artStock"
                                     value="#{BKAjusteInventario.listaArticuloSede}" widgetVar="lista"
                                     emptyMessage="No se encontraron Articulos en Inventario"
                                     filteredValue="" rowIndexVar="rowIndex" paginator="true" rows="20"
                                     paginatorTemplate="{CurrentPageReport}  {FirstPageLink} {PreviousPageLink} 
                                     {PageLinks} {NextPageLink} {LastPageLink} {RowsPerPageDropdown}"
                                     rowsPerPageTemplate="40,80,100" styleClass="print" >

                            <p:column id="idColumnaNum" style="width: 5%" headerText="Num.">
                                <h:outputText value="#{rowIndex+1}" />
                            </p:column>

                            <p:column id="idRazonSocial" >
                                <f:facet name="header">  
                                    <h:outputText value="Razon Social" />  
                                </f:facet>
                                <h:outputText value="#{artStock.sede.idEmpresa ne null?artStock.sede.idEmpresa.razonSocial:
                                                       (artStock.sede.idProveedor ne null?artStock.sede.idProveedor.razonSocial:'')}" />
                            </p:column>

                            <p:column id="idColumnaSede" sortBy="#{artStock.sede.direccion}" >
                                <f:facet name="header">  
                                    <h:outputText value="Sede" />  
                                </f:facet>
                                <h:outputText value="#{artStock.sede.nombre}" />
                            </p:column>

                            <p:column id="idColumnaArticulo" sortBy="#{artStock.articulo.nombreComercial}" >
                                <f:facet name="header">  
                                    <h:outputText value="Articulo" />  
                                </f:facet>
                                <h:outputText value="#{artStock.articulo.nombreComercial}" />
                            </p:column>

                            <p:column id="idColumnaPartidaLote" sortBy="#{artStock.partidaLote}" >
                                <f:facet name="header">  
                                    <h:outputText value="Partida/Lote" />  
                                </f:facet>
                                <h:outputText value="#{artStock.partidaLote}" />
                            </p:column>

                            <p:column id="idColumnaCantidad" sortBy="#{artStock.caStockDisponible}" >
                                <f:facet name="header">  
                                    <h:outputText value="Cantidad" />  
                                </f:facet>
                                <h:outputText value="#{artStock.caStockDisponible}" style="float: right" >
                                    <f:convertNumber maxFractionDigits="2" groupingUsed="false" minFractionDigits="2" />
                                </h:outputText>
                            </p:column>

                            <p:column id="idColumnaCosto" sortBy="#{artStock.vaCosto}" >
                                <f:facet name="header">  
                                    <h:outputText value="Valor" />  
                                </f:facet>
                                <h:outputText value="#{artStock.vaCosto}" style="float: right" >
                                    <f:convertNumber maxFractionDigits="2" groupingUsed="false" minFractionDigits="2" />
                                </h:outputText>
                            </p:column>


                            <p:column id="idAccionesCuentaBancaria" headerText="Acciones" exportable="false">

                                <p:commandButton id="btnEliminarBanco" title="Eliminar" icon="ui-icon-wrench" oncomplete="ajuste.show()" 
                                                 ajax="true" process="@this"
                                                 update=":formularioAjuste:pnlAjuste" actionListener="#{MBAjusteInventario.inicializarAjuste}">
                                    <f:attribute name="articuloSese" value="#{artStock}" />  
                                    <f:setPropertyActionListener value="#{artStock}" target="#{BKAjusteInventario.artculoAjuste}" />
                                </p:commandButton>

                            </p:column>

                        </p:dataTable>
                    </p:panel>
                </h:form>

                <p:dialog id="idFindOrden" header="Lista de Articulos" showEffect="explode"
                          widgetVar="ajuste" modal="true" maximizable="true">
                    <ui:include src="ajusteInventario.xhtml" />

                </p:dialog>

            </f:view>
        </ui:define>
    </ui:composition>

</html>